VMware为啥要收购Spring呢?
居然以4.2亿的价格收购了这个开源框架!让人羡慕的同时不免疑惑,VMware是搞虚拟机的,为什么要收购一个java做open source公司呢?
这可以看作VMware在自身虚拟机市场上的一个拓展和加深,目的是提供更丰富feature的云计算平台。虚拟机可以看成云计算的基础层面,而spring则可以看作应用层。使用spring的IOC模式把虚拟机提供的服务比如登录、存储提供给PAAS开发者,大概可以吸引不少眼球,因为很多的java开发者都比较熟悉和推崇spring。
GAE(google app engine)如何做的呢?大多地方google都是简单的使用了Factory模式来得到预设的服务。比如在用户验证这里:
public class MyServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { UserService userService = UserServiceFactory.getUserService(); String thisURL = request.getRequestURI(); if (request.getUserPrincipal() != null) { response.getWriter().println("Hello, " + request.getUserPrincipal().getName() + "! You can sign out."); } else { response.getWriter().println("Please sign in."); } } }
云计算平台除了提供硬件外,还要提供marsh-up的工具,将各个层粘合起来,这样才算是个平台。比如GAE的python平台就提供了webapp框架的接口,开发者可是使用Django,这种做法就比较友好。